/**
 * 
 */
package com.yidu.drug.service;

import java.util.List;
import java.util.Map;

import com.yidu.drug.model.MaterialTypeModel;

/**
 * 材料类型的service接口
 * @author 王志伟
 * @date 2018年8月9日 下午2:12:13
 * @version 1.0
 */
public interface MaterialTypeService {
	/**
	 * 根据材料类型ID删除的方法
	 * @param matTypeId 材料类型ID
	 * @return 删除的行数
	 */
	int deleteByPrimaryKey(String matTypeId);
	/**
	 * 增加所有的材料类型信息
	 * @param record 材料类型对象
	 * @return 增加的行数
	 */
    int insert(MaterialTypeModel record);
    /**
     * 增加部分的材料类型信息
     * @param record 材料类型对象
     * @return 增加的行数
     */
    int insertSelective(MaterialTypeModel record);
    /**
	 * 根据材料类型ID查询所有
     * @param matTypeId 材料类型ID
     * @return 材料类型对象
     */
    MaterialTypeModel selectByPrimaryKey(String matTypeId);
    /**
     * 根据材料类型主键修改部分信息
     * @param record 材料类型对象
     * @return 修改的行数
     */
    int updateByPrimaryKeySelective(MaterialTypeModel record);
    /**
     * 根据材料类型主键修改所有信息
     * @param record 材料类型对象
     * @return 修改的行数
     */
    int updateByPrimaryKey(MaterialTypeModel record);
    
    /**
     * 查询所有(包括根据条件查询和分页)
     * @param record 材料类型对象
     * @return 返回一个集合
     */
    Map<String,Object> findAll(String limit, String page, String matTypeName);
    
    /**
     * 查询总行数(包括根据条件查询)
     * @param record 材料类型对象
     * @return 返回一个总行数
     */
    long findRows(MaterialTypeModel record);
    
    /**
     * 查询所有
     * @return 集合
     */
    List<MaterialTypeModel> findAllType();
}
